Power users hub/zh-cn


如果您作为资深用户想了解如何定制和扩展 FreeCAD, 那您就来对地方了。

FreeCAD 可以用 Python 代码扩展,这些代码可以直接在 Python 控制台中执行,也可以在启动时从模块加载,因此不需要重新编译 FreeCAD 程序,即可对 FreeCAD 进行修改。例如,可以:

这些页面还远没有成熟。如果你没找到你要找的信息,或者你在别的地方发现了有用的信息,而我们没有链接在这里,那为什么不自己添加进来?同时,请在论坛留下你的意见。

定制 FreeCAD

在 FreeCAD 里写脚本

常规

通则

模块

在 FreeCAD 中,功能被划分为多个模块,每个模块负责处理特定的数据类型和应用。FreeCAD 有内置模块和扩展模块(插件)。安装了插件模块之后,可以像使用内置模块一样方便地使用它们。下文所述的是默认模块,FreeCAD 的每一个安装包都包含这些模块。

使用网格(Mesh)

使用零件(Part)

访问 Coin 场景图

控制 Qt 界面

参数对象类工作

示例

API 函数

FreeCAD 完整的 API 文档放在 https://www.freecad.org/api/ 中。它既有 C++ 也有 Python 的 API,还没有完全格式化好。如果想找只含 Python 的代码,可能要费一番功夫。更便于浏览的版本在这里。注意,它可能并不完整,因为它是人工更新的。要找更精确信息的话,直接在 FreeCAD 的 Python 控制台里浏览相应模块吧。

相关:将 C++ 暴露给 Python

高级修改

Python 教程

这些是不错的通用教程,并非专为 FreeCAD 撰写,但如果你完全没接触过 Python, 它们可能对你有益处。

Python

PySide ——怎样通过 Python 创建和管理 FreeCAD 的 Qt 用户交互界面。

下面两个参考源,专用于 PyQt(不是 PySide),但它们可能给了一些有用的信息:

Pivy - 怎样与 FreeCAD 的 3D 场景交互

社区项目

社区入口,你会找到其它基于 FreeCAD 的项目,它们由 FreeCAD 用户社区运行。如果你正开始一个新的 FreeCAD 项目,一定要登记上去。如果你愿意帮助 FreeCAD,我们列出了你可以做的事情。